<?php

namespace Admin\Form;

use Zend\Form\Annotation;

/**
 * @Annotation\Hydrator("Zend\Stdlib\Hydrator\ObjectProperty")
 * @Annotation\Name("form_cataloging_document")
 */
class CatalogingDocumentForm {

    /**
     * @Annotation\Type("Zend\Form\Element\Text")
     * @Annotation\Required(false)
     * @Annotation\Filter({"name":"StripTags"})
     * @Annotation\Filter({"name":"StringTrim"})
     * @Annotation\Validator({"name":"StringLength", "options":{"min":"1","max":"30"}})
     * @Annotation\Validator({"name":"Regex", "options":{"pattern":"/^[0-9]/"}})
     * @Annotation\Options({"label":"Mã vạch:"})
     * @Annotation\Attributes({"id":"bookBarcode","class":"bookBarcode"})
     */
    public $bookBarcode;

    /**
     * @Annotation\Type("Zend\Form\Element\Text")
     * @Annotation\Required(true)
     * @Annotation\Filter({"name":"StripTags"})
     * @Annotation\Filter({"name":"StringTrim"})
     * @Annotation\Options({"label":"Tiêu đề:"})
     * @Annotation\Attributes({"id":"bookTitle","class":"bookTitle"})
     */
    public $title;

    /**
     * @Annotation\Type("Zend\Form\Element\Text")
     * @Annotation\Required(true)
     * @Annotation\Filter({"name":"StripTags"})
     * @Annotation\Filter({"name":"StringTrim"})
     * @Annotation\Validator({"name":"Regex", "options":{"pattern":"/^[0-9]/"}})
     * @Annotation\Options({"label":"Số trang:"})
     * @Annotation\Attributes({"id":"numberOfPage","class":"numberOfPage"})
     */
    public $numberOfPages;

    /**
     * @Annotation\Type("Zend\Form\Element\Text")
     * @Annotation\Required(true)
     * @Annotation\Filter({"name":"StripTags"})
     * @Annotation\Filter({"name":"StringTrim"})
     * @Annotation\Options({"label":"Nhà xuất bản:"})
     * @Annotation\Attributes({"id":"publisher","class":"publisher"})
     */
    public $publisher;

    /**
     * @Annotation\Type("Zend\Form\Element\Text")
     * @Annotation\Required(true)
     * @Annotation\Filter({"name":"StripTags"})
     * @Annotation\Filter({"name":"StringTrim"})
     * @Annotation\Options({"label":"Năm xuất bản:"})
     * @Annotation\Attributes({"id":"datepicker","class":"datepicker"})
     */
    public $yearOfPublish;

    /**
     * @Annotation\Type("Zend\Form\Element\Text")
     * @Annotation\Required(true)
     * @Annotation\Filter({"name":"StripTags"})
     * @Annotation\Filter({"name":"StringTrim"})
     * @Annotation\Validator({"name":"Regex", "options":{"pattern":"/^[0-9]/"}})
     * @Annotation\Options({"label":"Tổng số cuốn:"})
     * @Annotation\Attributes({"id":"totalNumber","class":"totalNumber"})
     */
    public $totalNumber;

    /**
     * @Annotation\Type("Zend\Form\Element\Text")
     * @Annotation\Required(true)
     * @Annotation\Filter({"name":"StripTags"})
     * @Annotation\Filter({"name":"StringTrim"})
     * @Annotation\Validator({"name":"Regex", "options":{"pattern":"/^[0-9]/"}})
     * @Annotation\Options({"label":"Giá:"})
     * @Annotation\Attributes({"id":"price","class":"price"})
     */
    public $price;

    /**
     * @Annotation\Type("Zend\Form\Element\Text")
     * @Annotation\Required(true)
     * @Annotation\Filter({"name":"StripTags"})
     * @Annotation\Filter({"name":"StringTrim"})
     * @Annotation\Options({"label":"Kích thước:"})
     * @Annotation\Attributes({"id":"paperSize","class":"paperSize"})
     */
    public $paperSize;

    /**
     * @Annotation\Type("Zend\Form\Element\Text")
     * @Annotation\Required(true)
     * @Annotation\Filter({"name":"StripTags"})
     * @Annotation\Filter({"name":"StringTrim"})
     * @Annotation\Options({"label":"Tác giả:"})
     * @Annotation\Attributes({"id":"author","class":"author"})
     */
    public $author;

    /**
     * @Annotation\Type("Zend\Form\Element\Text")
     * @Annotation\Required(true)
     * @Annotation\Filter({"name":"StripTags"})
     * @Annotation\Filter({"name":"StringTrim"})
     * @Annotation\Options({"label":"Vị trí:"})
     * @Annotation\Attributes({"id":"location","class":"location"})
     */
    public $location;

    /**
     * @Annotation\Type("Zend\Form\Element\Textarea")
     * @Annotation\Required(true)
     * @Annotation\Filter({"name":"StripTags"})
     * @Annotation\Filter({"name":"StringTrim"})
     * @Annotation\Options({"label":"Mô tả:"})
     * @Annotation\Attributes({"id":"bookDescription","class":"bookDescription","cols":"93","rows":"5"})
     */
    public $bookDescription;

    /**
     * @Annotation\Type("Zend\Form\Element\Select")
     * @Annotation\Required({"required":"true" })
     * @Annotation\Filters({"name":"StripTags"},{"name":"StringTrim"}}) 
     * @Annotation\Options({"label":"Hình thức mượn:",
     *                      "value_options" : {"0":"Chỉ đọc tại chỗ","1":"Có thể mượn về"}})
     * @Annotation\Attributes({"id":"usedAs","class":"usedAs"})
     */
    public $usedAs;

    /**
     * @Annotation\Type("Zend\Form\Element\Select")
     * @Annotation\Required({"required":"true" })
     * @Annotation\Filters({"name":"StripTags"},{"name":"StringTrim"}}) 
     * @Annotation\Options({"label":"Ngôn ngữ:"})
     * @Annotation\Attributes({"id":"languageID","class":"languageID"})
     */
    public $languageID;

    /**
     * @Annotation\Type("Zend\Form\Element\Select")
     * @Annotation\Required({"required":"true" })
     * @Annotation\Filters({"name":"StripTags"},{"name":"StringTrim"}}) 
     * @Annotation\Options({"label":"Danh mục:"})
     * @Annotation\Attributes({"id":"bookTypeID","class":"bookTypeID"})
     */
    public $bookTypeID;

    /**
     * @Annotation\Type("Zend\Form\Element\Select")
     * @Annotation\Required({"required":"true" })
     * @Annotation\Filters({"name":"StripTags"},{"name":"StringTrim"}}) 
     * @Annotation\Options({"label":"Thể loại:"})
     * @Annotation\Attributes({"id":"categoryID","class":"categoryID"})
     */
    public $bookCategoryID;

    /**
     * @Annotation\Type("Zend\Form\Element\Submit")
     * @Annotation\Required(true)
     * @Annotation\Attributes({"value":"Biên Mục"})
     * @Annotation\Attributes({"id":"cataloging","class":"cataloging"})
     */
    public $cataloging;

}

